This is for quickly making structs futurable, where the future implementation is an underlying async fn
.
See this example for details ...
use ::auto_future::AutoFuture;
struct ExampleStruct;
impl ExampleStruct {
async fn do_async_work(self) -> u32 {
123
}
}
impl IntoFuture for ExampleStruct {
type Output = u32;
type IntoFuture = AutoFuture<u32>;
fn into_future(self) -> Self::IntoFuture {
let raw_future = self.do_async_work();
AutoFuture::new(raw_future)
}
}